Network video recorders (NVR) server function to record and store a digital video, usually from multiple video sources (“channels”) simultaneously (tens or hundreds of channels). The video is stored on a dedicated storage of a certain constant capacity. Each channel has its average bitrate, which can be almost constant, or may be quite variable, depending on the device, the video scene, the compression parameters, etc.
The NVR stores the video streams on designated storage devices. The storage devices have a storage capacity that is shared between all the recording channels of the NVR. When the storage device is full, the oldest video segments are deleted automatically, in order to make room for the new recording. Every channel has a limited “retention time”—the period of time for which the video is available before deletion. The longer the desired retention time, the bigger storage capacity needed.
When the bitrate of all the recorded channels is constant and equal to a configured one, the storage size needed to maintain a desired retention time may be given by a retention value multiplied by the sum of bitrates of all channels. However, there are situations when the bitrate is lower than configured. The reasons for this are as follows:
1) Some edge devices work in “VBR” compression mode (variable bitrate). The VBR mode means that although the channels are configured to compress the video at a certain bitrate, they often achieve a higher compression (less bitrate), especially on some “simple” scenes, in “low motion” periods, etc.2) The NVR may apply “enhanced compression” algorithms, which may achieve a further economy in bitrate. It is assumed that enhanced compression algorithms operate as a “black box”, which receives as input a compressed video stream, and provide as output a “more compressed video stream”, which, when decoded and displayed, yields video of the original quality.
The problem is that in those “reduced bitrate” cases (VBR or enhanced compression algorithms), the bitrate is lower in a non-deterministic way, so, one wouldn't know how much storage is needed exactly, in order to achieve significant reduction in storage size, but still comply with the desired retention time.